首页 / 技术类 / C++ / 有没有“template typedef”的比较好的等价实现?

有没有“template typedef”的比较好的等价实现?

2009-11-07 20:26:00

如题,想进行带模板参数的 typedef,如:

 1template <typename T>
 2typedef RBTree<T> Set<T>;
 3
 4template <typename T>
 5typedef Set<List<T>> MultiSet<T>;
 6
 7template <typename K, typename V>
 8typedef Set<Pair<K, V>> Map<K, V>;
 9
10template <typename K, typename V>
11typedef Map<K, List<V>> MultiMap<K, V>;

却无这种语法。

目前能想到的就是

 1template <typename T>
 2class Set : public RBTree<T>
 3{
 4};
 5
 6template <typename T>
 7class MultiSet : public Set<List<T>>
 8{
 9};
10
11template <typename K, typename V>
12class Map : public Set<Pair<K, V>>
13{
14};
15
16template <typename K, typename V>
17class MultiMap : public Map<K, List<V>>
18{
19};

不知有没有更好的方法?


首发:http://www.cppblog.com/Streamlet/archive/2009/11/07/100351.html



NoteIsSite/0.4